Skip to content

release: v1.0.0#25

Merged
dmartinochoa merged 2 commits into
mainfrom
release/1.0.0
May 19, 2026
Merged

release: v1.0.0#25
dmartinochoa merged 2 commits into
mainfrom
release/1.0.0

Conversation

@dmartinochoa
Copy link
Copy Markdown
Member

Summary

  • Cuts the first stable release. Two commits: feat: scan-on-save + ESLint v9 flat-config + roadmap bookkeeping (the closing Nice-for-1.0 punch list) and release: v1.0.0 (version bump + CHANGELOG fold, no functional changes).
  • After merge, tag v1.0.0 on main to fire publish.yml. The job stalls at the production environment gate until a reviewer approves; nothing ships to the marketplace or OpenVSX before that click.

What's in 1.0.0

  • R22 — ESLint v9 flat-config. Replace .eslintrc.json with eslint.config.mjs; drop @typescript-eslint/eslint-plugin + parser for the unified typescript-eslint package. Rules carry over verbatim (lint result on the current src/ is unchanged).
  • R29 — Scan-on-save mode. New pipelineCheck.scanOnSave setting (default false). Saves of CI/CD config files trigger a quiet workspace re-scan via scanWorkspace({ quiet: true })ProgressLocation.Window, no toast, in-flight guard against save-storms. Picks up cross-file effects in other CI files that aren't open (the LSP already handles the saved file itself on didSave).
  • ROADMAP bookkeeping. R10 / R15 / R22 / R29 ticked; the maintainer-action items for Private Vulnerability Reporting + Discussions are marked enabled (done via the GitHub API in the same session).
  • CHANGELOG. Unreleased folded into ## [1.0.0] — 2026-05-19 above an empty Unreleased block (publish.yml's awk extractor keys on the first two ## [ headers, so the GitHub release body now carries 1.0.0's notes verbatim).

Verification

  • npm run typecheck
  • npm run lint (eslint v9 flat config) ✓
  • npm test — 137 / 137 ✓
  • npm run test:integration:compile
  • npm run smoke (bundle activate/deactivate) ✓

Test plan

  • CI matrix green on ubuntu-latest, windows-latest, macos-latest (check job in ci.yml)
  • Linux-only steps green: integration suite (xvfb-run + @vscode/test-electron), npm audit --omit=dev --audit-level=high, dogfooded pipeline-check@v1.0.5 action against our own workflows, vsce package smoke
  • Manual H4 smoke (still open from v0.1.1): F5 the sample-workflow profile, open each provider fixture under test-fixtures/, confirm diagnostics still appear

Post-merge

  1. Tag v1.0.0 on main and push the tag — fires publish.yml.
  2. Approve the production environment gate to release VSCE_PAT / OVSX_PAT and ship to both registries.

🤖 Generated with Claude Code

dmartinochoa and others added 2 commits May 19, 2026 16:30
Closes the remaining Nice-for-1.0 punch list before tagging v1.0.0:

R22 — ESLint v9 flat-config migration
  Replace .eslintrc.json with eslint.config.mjs; drop the legacy
  @typescript-eslint/eslint-plugin + parser pair in favour of the
  unified typescript-eslint package. Rules carry over verbatim so the
  lint result is unchanged on the current src tree (eslint v9 flat
  config is the default-and-only format from v9 onward; staying on v8
  blocks the v9+ track and widens drift against TS 6 / esbuild 0.28).
  .vscodeignore picks up the new config so it stays out of the .vsix.

R29 — Scan-on-save mode
  New pipelineCheck.scanOnSave setting (boolean, default false).
  When enabled, saving a CI/CD config file triggers a quiet workspace
  re-scan via the existing scanWorkspace command — the LSP already
  re-publishes diagnostics for the saved file itself on didSave, so
  this is purely about catching cross-file effects in *other* CI files
  that aren't currently open (a Jenkinsfile that includes the
  just-edited shared library, a GHA workflow that calls the
  just-edited composite action).

  scanWorkspace now takes a { quiet? } option:
    - quiet: ProgressLocation.Window (status-bar spinner, no toast,
      no cancellation affordance — a scan-on-save run is short enough
      that the cancel button isn't a meaningful loss).
    - default (user-initiated): ProgressLocation.Notification with
      cancellation, completion toast, the existing behaviour.

  The save listener in extension.ts gates on providerForPath so only
  CI-relevant files trigger a scan, and an in-flight guard collapses
  save-storms (autosave, Save All) to a single scan.

  Integration test (activation.test.ts) extends the configuration
  schema completeness check to cover scanOnSave (and codeLens.enabled
  which was already missing).

ROADMAP bookkeeping
  - R10, R15 ticked (scan-workspace landed in #19).
  - R22 ticked (this commit).
  - R29 ticked (this commit).
  - Maintainer action items 2 + 3 (Private Vulnerability Reporting,
    Discussions) marked enabled — done via the GitHub REST API on
    2026-05-19, so SECURITY.md's reporting link and package.json's
    qna URL both resolve now.
  - Status snapshot row added for the v0.2.0 → 1.0 cycle.

Verification: typecheck + eslint (flat config) + 137-test vitest
suite + integration-compile + bundle smoke all green.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Cuts the first stable release. Bumps package.json (and the matching
package-lock root) to 1.0.0, folds the CHANGELOG Unreleased block into
a ## [1.0.0] — 2026-05-19 section above an empty Unreleased (keeps the
awk extractor in publish.yml happy: it prints between the first two
`## [` headers, so the GitHub-release body now carries 1.0.0's notes).

1.0.0 is the commitment that the v0.x iteration is done — see the
section header in CHANGELOG.md for the substance. Nothing in this
commit is functional; the feature work landed in the preceding commit.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 19, 2026

Warning

Rate limit exceeded

@dmartinochoa has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 19 minutes and 58 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 4d3be8d9-20e9-4ea7-9f77-4acd67590950

📥 Commits

Reviewing files that changed from the base of the PR and between 39f1475 and a202496.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (9)
  • .eslintrc.json
  • .vscodeignore
  • CHANGELOG.md
  • ROADMAP.md
  • eslint.config.mjs
  • package.json
  • src/extension.ts
  • src/test/integration/activation.test.ts
  • src/workspaceScan.ts
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch release/1.0.0

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@dmartinochoa dmartinochoa merged commit 0effd7e into main May 19, 2026
10 checks passed
@dmartinochoa dmartinochoa deleted the release/1.0.0 branch May 19, 2026 23:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant